package com.leyou.service;

import com.item.dto.SkuDTO;
import com.item.dto.SpuDTO;
import com.item.dto.SpuDetailDTO;
import com.leyou.common.vo.PageResult;

import java.util.List;

public interface GoodsService {


    /**
     *商品列表的显示
     * @param page
     * @param rows
     * @param saleable
     * @param key
     * @return
     */
    PageResult<SpuDTO> querySpuByPage(Integer page, Integer rows, Boolean saleable, String key);


    /**
     * 新增商品
     * @param spuDTO
     */
    void save(SpuDTO spuDTO);

    /**
     * 修改商品上下架
     * @param id
     * @param saleable
     */
    void updateSaleable(Long id, Boolean saleable);

    /**
     * 数据的回显
     * @param id
     * @return
     */
    SpuDetailDTO querySpuDetailById(Long id);

    /**
     * 根据spuID查询sku
     * @param id
     * @return
     */
    List<SkuDTO> querySkuListBySpuId(Long id);


    /**
     * 修改商品
     * @param spuDTO
     */
    void updateGoods(SpuDTO spuDTO);


    /**
     * 根据spu的id查询spu
     * @param id
     * @return
     */
    SpuDTO querySpuById(Long id);
}
